package com.sit.estatemanagementserver.enity;

import java.time.LocalDateTime;

/**
 * 访客信息实体类 (VisitInfo)
 */
public class VisitInfo {

    /**
     * 访客号 (主键)
     */
    private String visitorId;

    /**
     * 访客姓名
     */
    private String visitorName;

    /**
     * 访客电话
     */
    private String visitorPhone;

    /**
     * 拜访房间号 (外键, 关联Room)
     */
    private String visitingRoomNumber;

    /**
     * 拜访目的
     */
    private String visitPurpose;

    /**
     * 拜访开始时间
     */
    private LocalDateTime visitStartTime;

    /**
     * 拜访结束时间
     */
    private LocalDateTime visitEndTime;

    /**
     * 二维码url
     */
    private String qrCodePayload;

    // 构造函数
    public VisitInfo() {
    }

    public VisitInfo(String visitorId, String visitorName, String visitorPhone, String visitingRoomNumber, String visitPurpose, LocalDateTime visitStartTime, LocalDateTime visitEndTime, String qrCodePayload) {
        this.visitorId = visitorId;
        this.visitorName = visitorName;
        this.visitorPhone = visitorPhone;
        this.visitingRoomNumber = visitingRoomNumber;
        this.visitPurpose = visitPurpose;
        this.visitStartTime = visitStartTime;
        this.visitEndTime = visitEndTime;
        this.qrCodePayload = qrCodePayload;
    }

    // Getter and Setter
    public String getVisitorId() {
        return visitorId;
    }

    public void setVisitorId(String visitorId) {
        this.visitorId = visitorId;
    }

    public String getVisitorName() {
        return visitorName;
    }

    public void setVisitorName(String visitorName) {
        this.visitorName = visitorName;
    }

    public String getVisitorPhone() {
        return visitorPhone;
    }

    public void setVisitorPhone(String visitorPhone) {
        this.visitorPhone = visitorPhone;
    }

    public String getVisitingRoomNumber() {
        return visitingRoomNumber;
    }

    public void setVisitingRoomNumber(String visitingRoomNumber) {
        this.visitingRoomNumber = visitingRoomNumber;
    }

    public String getVisitPurpose() {
        return visitPurpose;
    }

    public void setVisitPurpose(String visitPurpose) {
        this.visitPurpose = visitPurpose;
    }

    public LocalDateTime getVisitStartTime() {
        return visitStartTime;
    }

    public void setVisitStartTime(LocalDateTime visitStartTime) {
        this.visitStartTime = visitStartTime;
    }

    public LocalDateTime getVisitEndTime() {
        return visitEndTime;
    }

    public void setVisitEndTime(LocalDateTime visitEndTime) {
        this.visitEndTime = visitEndTime;
    }

    public String getQrCodePayload() {
        return qrCodePayload;
    }

    public void setQrCodePayload(String qrCodePayload) {
        this.qrCodePayload = qrCodePayload;
    }
}